package net.begincode.searchCommon.bean;

import org.apache.commons.lang.StringUtils;

import net.begincode.searchCommon.common.BizException;
import net.begincode.searchCommon.enums.ResponseEnum;

/**
 * @author hlj~宇晗
 * @create 2017-03-26 23:55
 **/
public abstract class Param {
	public abstract void check();

	public void checkNotNull(Object value, ResponseEnum status) {
		checkArgs(value != null, status);
	}
	//StringUtils.isNotBlank(),判断是否为空,empty是String类型
	public void checkNotEmpty(String value, ResponseEnum status) {
		//若value是非空,为true,则不会调用方法
		//若表达式是false,也就是value为空,调用exception异常.给响应枚举赋值.
		checkArgs(StringUtils.isNotBlank(value), status);
	}


	public void checkArgs(boolean success, ResponseEnum status) {
		//检查参数为失败,则会调用构造器，将status状态赋值。
		if (!success) {
			throw new BizException(status);
		}
	}
}
